e ساعت دیجیتال و تابلو روان با Digital Clock AVR LED (8*32)

اسماعیل بخش زاد محمودی

09118315058

09336485452

09373054607

09390617786

http://telegram.me/Electronic_iran

mehrsa_bm

Esmail_bakhshzad@yahoo.com esmail2bakhshzad@gmail.com

*راهنمای سفارش پروژه*




www.labcenter.co.uk/

www.powerengineering.blogfa.com

www.Elecdl.com

www.p30download.com

 

 

 

 

 

 

 

 

 

 

Google

در اين وبلاگ
در كل اينترنت

الکترونیک مقدماتی

مقاومت

سلف

خازن

دیود

دیود زنر

یک سوسازی دیود

ترانزیستور BJT

دیجیتال Digital

الکترونیک صنعتی

تایرستورها Thyristors

ترایاک TRIAC

ماسفت MOSFET

ترانزیستور دوقطبی IGBT

مبدل های DC به DC

اینورترها(DC/AC Inverter)

میکرو الکترونیک AVR

برنامه نویسی Assembl

1. مقدمه

2. دستورات محاسباتی


11.مدارات میکروکنترلر 8051

12.مدارات میکروکنترلر PIC

13.مدارات میکروکنترلر AVR

14.مدارات دیجیتال Digital

15.مدارات آنالوگ Analog

16. ماژول های الکترونیک

 



 


دانلود نرم افزارهای کاربردی

 


Content on this page requires a newer version of Adobe Flash Player.

Get Adobe Flash player

ساعت

مقدمه:

این پروژه یک نمایشگر ساعت دیجیتال RTC همراه با نمایشگر LED و نمایش ساعت، تاریخ، روز هفته،دمای محیط میباشد که در آن از 256 LED برای انجام این عمل استفاده شده است که میتوان در رنگ های مختلف LEDمونتاژ شود، مشخصات این دستگاه در زیر درج شده است. پروژه بصورت نیمه رایگان می باشد، اما برای اشخاصی که اطلاعات کافی درمورد این تراشه دارند بخش های از این پروژه به زبان Assembly در این سایت همراه با مثال های کاربردی قرار گرفته که می توانند آنها را دانلود و اجرا کنند ازجمله نحوه برنامه نویسی تابلو روان، کار با ماتریس های LED و درایورهای سطر ستون، و............

Digital Clock LED 32x8 (01)

بلوک دیگرام مدار:

  1. ماتریس LED
  2. درایور های سطر و ستون
  3. پردازنده
  4. حافظه EEPROM
  5. ساعت RTC همراه با نمایش فارسی و انگلیسی
  6. نمایش دما و نمایش تبلیغات باتوجه به سفارش مشتری همراه با سنسور صوتی (نمایش فعال با صدا)
  7. ارتباط از طریق بخش ارتباط Serial- TWI

در واقع یک تابلو نمایشگر دیجیتالی، کد های متن مورد نظر خود را از طریق پردازنده پس از آنالیز اطلاعات از حافظه موجود در تراشه میکرو کنترلر برداشت نموده سپس سیگنالهای لازم را جهت نمایش تولید کرده و در اختیار درایورها قرار میدهد باتوجه به اینکه نحوه چیدمان LED ها در نمایشگر به صورت ماتریسی می باشد، لذا دو دسته درایور برای راه اندازی ماتریس نیاز است که شامل درایور های سطر و درایور های ستون میباشد. این درایور ها با توجه به فرامین دریافتی از سوی پردازنده، با روشن و خاموش نگاه داشتن LED های موجود در ماتریس، باعث به نمایش در آمدن مطلب اعم از متن و یا تصویر بر روی ماتریس خواهند شد.

Digital Clock LED 32x8 (02)

خاصیت موزائیکی تصویر:

تصویر تشکیل شده است از مجموعه نقاط که به آن Pixel سلول تصويري می گویند هر یک از این نقاط را یک جزء تصویر گویند و این خاصیت را خاصیت موزائیکی تصویر می نامند. با بزرگ نمایی بیشتر هرچه تعداد اجزاء تصویر در واحد سطح بیشتر باشد، وضوح تصویر بیشتر می باشد. به عبارت دیگر به واقعیت نزدیکتر بوده و جزئیات آن بهتر دیده می شود در تابلوهای دیجیتالی نیز خاصیت موزائیکی وجود دارد. تصویر توسط ماتریسی از LED ها ایجاد میگردد در واقعه در تابلو روان موزائیک ها LED ها می باشند. که از یک فاصله معین چشم بیننده قادر به تمایز نقاط تصویر ایجاد شده نبوده و یک تصویر را یکپارچه احساس میکند.

برای دیدن در ابعاد واقعی بر روی عکس کلیک کنید.

Digital Clock LED 32x8 (03)

جاروب ماتریس:

جهت تشکیل تصویر بر روی پانل تابلو نیاز به روشن و خاموش نگه داشتن LED های موجود بر روی تابلو متناسب با تصویر مورد نظر است. بنابراین نیاز به کنترل تک تک LED های موجود در تابلو می باشد. از طرفی هر LED دارای دو پایه است با فرض تک رنگ بودن!! و در صورتی که ما یک پنل با ماتریس 8*8 داشته باشیم 64 عدد LED داریم در 2 پایه ضرب شود 128 پایه داریم که باید کنترل شود. مسلماً استفاده از این تعداد سیم مقرون به صرفه نخواهد بود و باعث پیچیدگی مدار خواهد شد. جهت بر طرف کردن مشکل فوق می توان پایه یکسان در LED ها را به صورت سطری و ستونی به یکدیگر متصل نمود. به تصویر زیر دقت کنید:

Digital Clock LED 32x8 (04)

همانطور که در تصویر مشاهده نمودید، در این آرایش آند تمامی LED ها موجود در یک سطر یکسان به هم متصل شدند، همچنین کاتد آنها نیز در یک ستون یکسان به هم اتصال داده شده اند. شما در این روش جهت روشن کردن هر LED کافیست که سطری که آن LED در آنجا قرار دارد را به سطح ولتاژ مثبت اتصال داده سپس ستون مربوط به همان LED را به زمین مدار وصل کنید. با این روش ما می توانیم از تعداد سیم های مورد نیاز جهت کنترل LED ها بکاهیم ولی در مقابل امکان کنترل همزمان تمامی سطر ها را از دست دادیم و در هر لحظه فقط و فقط میتوان LED های موجود در یک سطر و یا یک ستون را کنترل نمود.

Digital Clock LED 32x8 (05)

به هر حال در صورت عدم استفاده از روش فوق شما مدار پیچیده ای خواهید داشت، در تصویر بالا برای کنترل هر ماتریس تنها به 12 سیم نیاز داریم، فقط در این حالت برنامه شما کمی پیچیده خواهد شد ولی هزینه مونتاژ پایین خواهد آمد که این خود یک مزیت می باشد.

انواع روش های جاروب:

  1. جاروب سطرها
  2. جاروب ستون ها

در جاروب سطرها شما LED های موجود در سطر اول را روشن می کنید، سپس LEDهای سطر دوم و ..... تا به آخر برسیم. سپس دومرتبه این کار را انجام می دهیم.

در جاروب ستون ها شما LED های موجود در ستون اول را روشن سپس LEDهای ستون دوم و ..... تا به آخر برسیم. سپس دومرتبه این کار را انجام می دهیم.

به یک بار جاروب کامل تازه سازی یا Refresh میگویند.

جهت کمک به درک مطلب های ذکر شده برای شما از هردو روش یک مثال آورده شد.

مدار آزمایشی جاروب سطر و ستون همراه با برنامه میکروکنترلر:

در این بخش چند آزمایش کامل برای میکرو کنترلر ATmega8 به زبان اسمبلی قرار داده شده که همرا با سایر آزمایشها می توانید آنها را دانلود و سپس اجراء کنید. این برنامه کاملاً دقیق می باشد لطفاً تنظیمات دیگر را برهم نزنید فقط پس از نمایش اگر سرعت PC شما با سرعت فرکانس انتخاب شده میکرو یکی نباشد ممکن است که تصویر نمایش داده شده ناقص پخش شود پس شما فرکانس میکرو را تغییر دهید.

Digital Clock LED 32x8 (06)

توجه: شما می توانید مدارهای طراحی شده بالا را در نرم افزار شبیه ساز Proteus v7 آزمایش کنید می توانید آنها را همراه با مثال های دیگر از لینک معرفی شده همین بخش دانلود نمائید.

فایل نمونه برنامه درفرمت pdf

Test_Programmable_Move-Down 5x7 Column

توجه: جاروب کردن علاوه بر کاهش سیم بندی و کم شدن پیچیدگی مدار باعث خواهد شد که شما در هر لحظه از زمان تنها تعداد کمتری از LED های تابلو را روشن کنید و در نتیجه میزان مصرف جریان الکتریکی تابلو به میزان قابل توجه ای کاهش پیدا خواهد نمود و مدارات درایور ارزان تری را می شود برای مدار بکار برد.

اثر فلیکر Flicker:

اثر نور در چشم انسان برای مدت کوتاهی باقی می ماند. این خاصیت را اثر پس ماند نور می نامند. بر مبنای همین خاصیت است که در سینما و تلویزیون احساس پیوستگی تصویر بوجود می آید. چنانچه تصاویری که یک حرکت مثلا راه رفتن اسب عکس برداری شود و سپس با سرعت 16 بار در ثانیه به نمایش درآید چشم انسان منقطع بودن تصاویر را احساس نکرده و تصاویر را بطور پیوسته حس می کند.

البته به علت اینکه با 16 تصویر در ثانیه حرکت نرم و طبیعی نداریم، فرکانس مذبور بعداً به 25 تصویر در ثانیه افزایش داده شد. در این فرکانس برای بیش از 90 درصد حرکات، پیوستگی طبیعی بوجود می آید. به همین علت به فرکانس مذبور حد پیوستگی گفته میشود. مشکل دیگر مسئله چشمک زدن تصویر است که برای رفع این مشکل فرکانس را باز هم افزایش می دهند. در تابلو های روان هم مسائل پیوستگی تصاویر و همچنین چشمک زدن، عوامل تعیین کننده سیستم جاروب و زمانهای مربوطه هستند.

برای دیدن در ابعاد واقعی بر روی عکس کلیک کنید.

LED-Stopper 7x20 (08)

جهت کم کردن این اثر و افزایش نور تابلو روان چند کار می توان انجام داد:

  1. افزایش ولتاژ اعمال شده به LED ها که معمولاً بعلت خطر سوختن LED ها در اثر هنگ کردن تابلو افزایش داده و همچنین از عمر مفید آنها نیز خواهد کاست.
  2. تقسیم تابلو به سگمنت های جدا گانه یا ماتریس های جداگانه مثلا در مدار بالا تابلو را به چهار ماتریس 5*7 تقسیم نموده ایم که روش مناسبی می باشد و سخت افزار مدار را به یک لچ یا نگهدارنده متصل نموده ایم.

جدول گلایف:

برای نمایش هر تصویر و یا متنی در تابلو روان ما نیاز به این داریم که ابتدا آنرا به نقاط تشکیل دهنده تقسیم کنیم. در مورد حروف نیز بدین شکل عمل میکنیم و به ازای هر حرف یک جدول درست میکنیم، به مجموعه این جداول که شامل تمامی حروف میشود اصطلاحاً جدول گلایف می گویند. جهت روشن شدن مطلب به تصویر زیر دقت نمایید.

Digital Clock LED 32x8 (08)

همانطور که مشاهده می کنید در تصویر بالا نمونه ای از جدول گلایف برای حروف و فونت های فارسی آورده شده جدول های مختلفی را می شود برای انواع حروف و کاراکتر ایجاد نمود در پایان همین بخش فایل Excel برای دانلود شما قرار داده ام که شما می توانید آنرا برای انواع ماتریس های سطری یا ستونی تغییر دهید، کدها 0 یا 1 با هر نوع سخت افزاری که شما بکار خواهید برد تغییر می کند.

نمونه ای از جدول گلایف بکاربرده شده در برنامه به زبان Assembly در شکل زیر آورده شده:

Digital Clock LED 32x8 (09)

توضیح بخش اسکن ماتریس ها یا همان LED ها:

برای فهم بهتر نحوه اسکن کردن ماتریس ها یک مثال ساده کافی میباشد ما باید فرض کنیم که سرعت میکرو در هنگام اجرای برنامه از ما کمتر است مثال برای نمایش حرف A باید به این صورت عمل شود.

مثال : ابتدا کد حرف A را بصورت باینری مشخص میکنیم:

Digital Clock LED 32x8 (10)

برای نمایش این کد 11 هگز باید ابتدا این کد را همراه با 7 کد دیگر که مربوط میشود به ماتریسهای دیگر که در این مثال همه آنها صفر می باشد را از طریق گذرگاه ارسال نمود سپس بیت 7 پورت سطر یا همان اسکن را صفر می نمایم به این ترتیب کد 11 نمایش داده میشود نمای مداری نوشته بالا به شکل زیر می باشد مابقی کدها هم به همین صورت ارسال می شوند فقط بین هر ارسال یک تاخیر قرار می دهیم تا چشم انسان این کاراکتر را پیوسته مشاهده کند متوجه خاموش و روشن شدن LED ها نشود همانند کار لامپ انتشار الکترون در لامپ تصویر TV.

Digital Clock LED 32x8 (11)

برای خلاصه سازی ابتدا همه کارکتر های کد مربوطه را باید در یک جدول (جدول گلایف) نوشت سپس آنها را خط به خط خواند و نمایش داد برای این کار از دستور .DB استفاده می کنیم.

توجه: شما می توانید مدارهای طراحی شده بالا را در نرم افزار شبیه ساز Proteus v7 آزمایش کنید می توانید آنها را همراه با مثال های دیگر از لینک معرفی شده همین بخش دانلود نمائید.

لینک دانلود:

http://s3.picofile.com/file/7645463866/Project_Electronic_003_Project_3_Party_1.zip.html

رمز فایل: www.Project-esisis.com


نسخه ی pdf قابل دانلود این صفحه:

لینک دانلود:

http://s2.picofile.com/file/7650162896/Page_Project4_Digital_Clock_LED_8x32_AVR_1_.zip.html

رمز فایل:

www.Project-esisis.com

راھنمای دانلودگزارش خرابی لینک

صفحه پیشین

 

 

 

<img src="Background/Signbot LED (1).gif" width="249" height="49" alt="Signbot LED (1)" />
فروشگاه الکترونیک
کسب درآمد میلیونی در ماه
کانال تلگرام